{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Introduction to Quantitative Finance\n",
    "\n",
    "Copyright (c) 2019 Python Charmers Pty Ltd, Australia, <https://pythoncharmers.com>. All rights reserved.\n",
    "\n",
    "<img src=\"img/python_charmers_logo.png\" width=\"300\" alt=\"Python Charmers Logo\">\n",
    "\n",
    "Published under the Creative Commons Attribution-NonCommercial 4.0 International (CC BY-NC 4.0) license. See `LICENSE.md` for details.\n",
    "\n",
    "Sponsored by Tibra Global Services, <https://tibra.com>\n",
    "\n",
    "<img src=\"img/tibra_logo.png\" width=\"300\" alt=\"Tibra Logo\">\n",
    "\n",
    "\n",
    "## Module 1.3: Multicolinearity\n",
    "\n",
    "### 1.3.3 Colinearity\n",
    "\n",
    "Colinearity is the state of two independent variables being highly correlated. In this case, one of the assumptions behind the OLS estimator is broken, specifically that the variables can not have a linear relationship. Technically, colinearity refers to the case when two variables are *perfectly* correlated, but in practice it is often used to mean \"very highly correlated and causing a problem\". \n",
    "\n",
    "What kinds of problems does colinearity create? If two variables are perfectly correlated, then the OLS estimator equation cannot be computed at all ($X'X$ has no inverse).  In practice, the problem is that the linear model cannot distinguish between the two variables. Sometimes this still results in a useful model, and sometimes it does not. It may cause some variables to appear to be insignificant in the relationship when they really are - in other words, their \"weight\" is transferred to another, correlated value.\n",
    "\n",
    "In cases of colinearity causing a problem with your model, check for a few obvious things first:\n",
    "\n",
    "1. That you haven't added a variable twice. This can happen through a coding problem (the very same variable appears twice) or through a data problem (you join two tables that have the same data, with different names). In this case, remove a duplicate.\n",
    "2. Check for redundant variables. A redundant variable adds no explanatory power by itself, and instead ends up simply confusing the model. An example would be having a parameter \"total family income\" and another two indicating \"income of first parent\" and \"income of second parent\". The first variable is simply the sum of the next two (at least, in most cases).\n",
    "3. Use a different model, such as a Ridge Regression, which can better handle this type of issue\n",
    "4. Combine the features into a set of linearly separable features. We will see the PCA algorithm in the next set of modules, an algorithm that can do this.\n",
    "\n",
    "Note that due to these reasons, you shouldn't remove variables that appear insignificant in a model affected by colinearity - they may be the ones with colinearity and actually have a high predictive power.\n",
    "\n",
    "To detect colinearity, compute the pairwise correlation between each set of variables. Many correlation functions do this for you, for instance `pd.corr`:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "%run setup.ipy"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Let's load a dataset from the scikit learn repository\n",
    "# scikit-learn is a machine learning library, and has a few sample datasets \n",
    "from sklearn.datasets import load_boston"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [],
   "source": [
    "boston_data = load_boston()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "def sklearn_to_df(sklearn_dataset):\n",
    "    # A helper function to convert the scikit-learn dataset to a pandas DataFrame\n",
    "    # From: https://stackoverflow.com/questions/38105539/how-to-convert-a-scikit-learn-dataset-to-a-pandas-dataset/46379878#46379878\n",
    "    df = pd.DataFrame(sklearn_dataset.data, columns=sklearn_dataset.feature_names)\n",
    "    df['target'] = pd.Series(sklearn_dataset.target)\n",
    "    return df"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "boston = sklearn_to_df(boston_data)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>CRIM</th>\n",
       "      <th>ZN</th>\n",
       "      <th>INDUS</th>\n",
       "      <th>CHAS</th>\n",
       "      <th>NOX</th>\n",
       "      <th>RM</th>\n",
       "      <th>AGE</th>\n",
       "      <th>DIS</th>\n",
       "      <th>RAD</th>\n",
       "      <th>TAX</th>\n",
       "      <th>PTRATIO</th>\n",
       "      <th>B</th>\n",
       "      <th>LSTAT</th>\n",
       "      <th>target</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>0</td>\n",
       "      <td>0.00632</td>\n",
       "      <td>18.0</td>\n",
       "      <td>2.31</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.538</td>\n",
       "      <td>6.575</td>\n",
       "      <td>65.2</td>\n",
       "      <td>4.0900</td>\n",
       "      <td>1.0</td>\n",
       "      <td>296.0</td>\n",
       "      <td>15.3</td>\n",
       "      <td>396.90</td>\n",
       "      <td>4.98</td>\n",
       "      <td>24.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1</td>\n",
       "      <td>0.02731</td>\n",
       "      <td>0.0</td>\n",
       "      <td>7.07</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.469</td>\n",
       "      <td>6.421</td>\n",
       "      <td>78.9</td>\n",
       "      <td>4.9671</td>\n",
       "      <td>2.0</td>\n",
       "      <td>242.0</td>\n",
       "      <td>17.8</td>\n",
       "      <td>396.90</td>\n",
       "      <td>9.14</td>\n",
       "      <td>21.6</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2</td>\n",
       "      <td>0.02729</td>\n",
       "      <td>0.0</td>\n",
       "      <td>7.07</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.469</td>\n",
       "      <td>7.185</td>\n",
       "      <td>61.1</td>\n",
       "      <td>4.9671</td>\n",
       "      <td>2.0</td>\n",
       "      <td>242.0</td>\n",
       "      <td>17.8</td>\n",
       "      <td>392.83</td>\n",
       "      <td>4.03</td>\n",
       "      <td>34.7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>3</td>\n",
       "      <td>0.03237</td>\n",
       "      <td>0.0</td>\n",
       "      <td>2.18</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.458</td>\n",
       "      <td>6.998</td>\n",
       "      <td>45.8</td>\n",
       "      <td>6.0622</td>\n",
       "      <td>3.0</td>\n",
       "      <td>222.0</td>\n",
       "      <td>18.7</td>\n",
       "      <td>394.63</td>\n",
       "      <td>2.94</td>\n",
       "      <td>33.4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>4</td>\n",
       "      <td>0.06905</td>\n",
       "      <td>0.0</td>\n",
       "      <td>2.18</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.458</td>\n",
       "      <td>7.147</td>\n",
       "      <td>54.2</td>\n",
       "      <td>6.0622</td>\n",
       "      <td>3.0</td>\n",
       "      <td>222.0</td>\n",
       "      <td>18.7</td>\n",
       "      <td>396.90</td>\n",
       "      <td>5.33</td>\n",
       "      <td>36.2</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "      CRIM    ZN  INDUS  CHAS    NOX     RM   AGE     DIS  RAD    TAX  \\\n",
       "0  0.00632  18.0   2.31   0.0  0.538  6.575  65.2  4.0900  1.0  296.0   \n",
       "1  0.02731   0.0   7.07   0.0  0.469  6.421  78.9  4.9671  2.0  242.0   \n",
       "2  0.02729   0.0   7.07   0.0  0.469  7.185  61.1  4.9671  2.0  242.0   \n",
       "3  0.03237   0.0   2.18   0.0  0.458  6.998  45.8  6.0622  3.0  222.0   \n",
       "4  0.06905   0.0   2.18   0.0  0.458  7.147  54.2  6.0622  3.0  222.0   \n",
       "\n",
       "   PTRATIO       B  LSTAT  target  \n",
       "0     15.3  396.90   4.98    24.0  \n",
       "1     17.8  396.90   9.14    21.6  \n",
       "2     17.8  392.83   4.03    34.7  \n",
       "3     18.7  394.63   2.94    33.4  \n",
       "4     18.7  396.90   5.33    36.2  "
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "boston.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "C = boston.corr()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "def colour_large_values_red(val):\n",
    "    \"\"\"Colour cells based on their value - a useful pattern for reports!\"\"\"\n",
    "    color = 'red' if abs(val) > 0.9 else 'lightgrey'\n",
    "    return 'background-color: %s' % color"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col0 {\n",
       "            background-color:  red;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col1 {\n",
       "            background-color:  red;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col2 {\n",
       "            background-color:  red;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col3 {\n",
       "            background-color:  red;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col4 {\n",
       "            background-color:  red;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col5 {\n",
       "            background-color:  red;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col6 {\n",
       "            background-color:  red;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col7 {\n",
       "            background-color:  red;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col8 {\n",
       "            background-color:  red;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col9 {\n",
       "            background-color:  red;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col8 {\n",
       "            background-color:  red;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col9 {\n",
       "            background-color:  red;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col10 {\n",
       "            background-color:  red;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col11 {\n",
       "            background-color:  red;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col12 {\n",
       "            background-color:  red;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col13 {\n",
       "            background-color:  red;\n",
       "        }</style><table id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0\" ><thead>    <tr>        <th class=\"blank level0\" ></th>        <th class=\"col_heading level0 col0\" >CRIM</th>        <th class=\"col_heading level0 col1\" >ZN</th>        <th class=\"col_heading level0 col2\" >INDUS</th>        <th class=\"col_heading level0 col3\" >CHAS</th>        <th class=\"col_heading level0 col4\" >NOX</th>        <th class=\"col_heading level0 col5\" >RM</th>        <th class=\"col_heading level0 col6\" >AGE</th>        <th class=\"col_heading level0 col7\" >DIS</th>        <th class=\"col_heading level0 col8\" >RAD</th>        <th class=\"col_heading level0 col9\" >TAX</th>        <th class=\"col_heading level0 col10\" >PTRATIO</th>        <th class=\"col_heading level0 col11\" >B</th>        <th class=\"col_heading level0 col12\" >LSTAT</th>        <th class=\"col_heading level0 col13\" >target</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                        <th id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0level0_row0\" class=\"row_heading level0 row0\" >CRIM</th>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col0\" class=\"data row0 col0\" >1</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col1\" class=\"data row0 col1\" >-0.200469</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col2\" class=\"data row0 col2\" >0.406583</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col3\" class=\"data row0 col3\" >-0.0558916</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col4\" class=\"data row0 col4\" >0.420972</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col5\" class=\"data row0 col5\" >-0.219247</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col6\" class=\"data row0 col6\" >0.352734</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col7\" class=\"data row0 col7\" >-0.37967</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col8\" class=\"data row0 col8\" >0.625505</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col9\" class=\"data row0 col9\" >0.582764</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col10\" class=\"data row0 col10\" >0.289946</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col11\" class=\"data row0 col11\" >-0.385064</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col12\" class=\"data row0 col12\" >0.455621</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row0_col13\" class=\"data row0 col13\" >-0.388305</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0level0_row1\" class=\"row_heading level0 row1\" >ZN</th>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col0\" class=\"data row1 col0\" >-0.200469</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col1\" class=\"data row1 col1\" >1</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col2\" class=\"data row1 col2\" >-0.533828</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col3\" class=\"data row1 col3\" >-0.0426967</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col4\" class=\"data row1 col4\" >-0.516604</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col5\" class=\"data row1 col5\" >0.311991</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col6\" class=\"data row1 col6\" >-0.569537</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col7\" class=\"data row1 col7\" >0.664408</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col8\" class=\"data row1 col8\" >-0.311948</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col9\" class=\"data row1 col9\" >-0.314563</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col10\" class=\"data row1 col10\" >-0.391679</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col11\" class=\"data row1 col11\" >0.17552</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col12\" class=\"data row1 col12\" >-0.412995</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row1_col13\" class=\"data row1 col13\" >0.360445</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0level0_row2\" class=\"row_heading level0 row2\" >INDUS</th>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col0\" class=\"data row2 col0\" >0.406583</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col1\" class=\"data row2 col1\" >-0.533828</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col2\" class=\"data row2 col2\" >1</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col3\" class=\"data row2 col3\" >0.062938</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col4\" class=\"data row2 col4\" >0.763651</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col5\" class=\"data row2 col5\" >-0.391676</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col6\" class=\"data row2 col6\" >0.644779</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col7\" class=\"data row2 col7\" >-0.708027</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col8\" class=\"data row2 col8\" >0.595129</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col9\" class=\"data row2 col9\" >0.72076</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col10\" class=\"data row2 col10\" >0.383248</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col11\" class=\"data row2 col11\" >-0.356977</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col12\" class=\"data row2 col12\" >0.6038</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row2_col13\" class=\"data row2 col13\" >-0.483725</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0level0_row3\" class=\"row_heading level0 row3\" >CHAS</th>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col0\" class=\"data row3 col0\" >-0.0558916</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col1\" class=\"data row3 col1\" >-0.0426967</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col2\" class=\"data row3 col2\" >0.062938</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col3\" class=\"data row3 col3\" >1</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col4\" class=\"data row3 col4\" >0.0912028</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col5\" class=\"data row3 col5\" >0.0912512</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col6\" class=\"data row3 col6\" >0.0865178</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col7\" class=\"data row3 col7\" >-0.0991758</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col8\" class=\"data row3 col8\" >-0.00736824</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col9\" class=\"data row3 col9\" >-0.0355865</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col10\" class=\"data row3 col10\" >-0.121515</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col11\" class=\"data row3 col11\" >0.0487885</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col12\" class=\"data row3 col12\" >-0.0539293</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row3_col13\" class=\"data row3 col13\" >0.17526</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0level0_row4\" class=\"row_heading level0 row4\" >NOX</th>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col0\" class=\"data row4 col0\" >0.420972</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col1\" class=\"data row4 col1\" >-0.516604</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col2\" class=\"data row4 col2\" >0.763651</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col3\" class=\"data row4 col3\" >0.0912028</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col4\" class=\"data row4 col4\" >1</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col5\" class=\"data row4 col5\" >-0.302188</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col6\" class=\"data row4 col6\" >0.73147</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col7\" class=\"data row4 col7\" >-0.76923</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col8\" class=\"data row4 col8\" >0.611441</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col9\" class=\"data row4 col9\" >0.668023</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col10\" class=\"data row4 col10\" >0.188933</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col11\" class=\"data row4 col11\" >-0.380051</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col12\" class=\"data row4 col12\" >0.590879</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row4_col13\" class=\"data row4 col13\" >-0.427321</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0level0_row5\" class=\"row_heading level0 row5\" >RM</th>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col0\" class=\"data row5 col0\" >-0.219247</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col1\" class=\"data row5 col1\" >0.311991</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col2\" class=\"data row5 col2\" >-0.391676</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col3\" class=\"data row5 col3\" >0.0912512</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col4\" class=\"data row5 col4\" >-0.302188</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col5\" class=\"data row5 col5\" >1</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col6\" class=\"data row5 col6\" >-0.240265</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col7\" class=\"data row5 col7\" >0.205246</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col8\" class=\"data row5 col8\" >-0.209847</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col9\" class=\"data row5 col9\" >-0.292048</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col10\" class=\"data row5 col10\" >-0.355501</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col11\" class=\"data row5 col11\" >0.128069</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col12\" class=\"data row5 col12\" >-0.613808</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row5_col13\" class=\"data row5 col13\" >0.69536</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0level0_row6\" class=\"row_heading level0 row6\" >AGE</th>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col0\" class=\"data row6 col0\" >0.352734</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col1\" class=\"data row6 col1\" >-0.569537</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col2\" class=\"data row6 col2\" >0.644779</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col3\" class=\"data row6 col3\" >0.0865178</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col4\" class=\"data row6 col4\" >0.73147</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col5\" class=\"data row6 col5\" >-0.240265</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col6\" class=\"data row6 col6\" >1</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col7\" class=\"data row6 col7\" >-0.747881</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col8\" class=\"data row6 col8\" >0.456022</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col9\" class=\"data row6 col9\" >0.506456</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col10\" class=\"data row6 col10\" >0.261515</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col11\" class=\"data row6 col11\" >-0.273534</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col12\" class=\"data row6 col12\" >0.602339</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row6_col13\" class=\"data row6 col13\" >-0.376955</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0level0_row7\" class=\"row_heading level0 row7\" >DIS</th>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col0\" class=\"data row7 col0\" >-0.37967</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col1\" class=\"data row7 col1\" >0.664408</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col2\" class=\"data row7 col2\" >-0.708027</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col3\" class=\"data row7 col3\" >-0.0991758</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col4\" class=\"data row7 col4\" >-0.76923</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col5\" class=\"data row7 col5\" >0.205246</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col6\" class=\"data row7 col6\" >-0.747881</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col7\" class=\"data row7 col7\" >1</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col8\" class=\"data row7 col8\" >-0.494588</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col9\" class=\"data row7 col9\" >-0.534432</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col10\" class=\"data row7 col10\" >-0.232471</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col11\" class=\"data row7 col11\" >0.291512</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col12\" class=\"data row7 col12\" >-0.496996</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row7_col13\" class=\"data row7 col13\" >0.249929</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0level0_row8\" class=\"row_heading level0 row8\" >RAD</th>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col0\" class=\"data row8 col0\" >0.625505</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col1\" class=\"data row8 col1\" >-0.311948</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col2\" class=\"data row8 col2\" >0.595129</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col3\" class=\"data row8 col3\" >-0.00736824</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col4\" class=\"data row8 col4\" >0.611441</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col5\" class=\"data row8 col5\" >-0.209847</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col6\" class=\"data row8 col6\" >0.456022</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col7\" class=\"data row8 col7\" >-0.494588</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col8\" class=\"data row8 col8\" >1</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col9\" class=\"data row8 col9\" >0.910228</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col10\" class=\"data row8 col10\" >0.464741</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col11\" class=\"data row8 col11\" >-0.444413</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col12\" class=\"data row8 col12\" >0.488676</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row8_col13\" class=\"data row8 col13\" >-0.381626</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0level0_row9\" class=\"row_heading level0 row9\" >TAX</th>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col0\" class=\"data row9 col0\" >0.582764</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col1\" class=\"data row9 col1\" >-0.314563</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col2\" class=\"data row9 col2\" >0.72076</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col3\" class=\"data row9 col3\" >-0.0355865</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col4\" class=\"data row9 col4\" >0.668023</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col5\" class=\"data row9 col5\" >-0.292048</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col6\" class=\"data row9 col6\" >0.506456</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col7\" class=\"data row9 col7\" >-0.534432</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col8\" class=\"data row9 col8\" >0.910228</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col9\" class=\"data row9 col9\" >1</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col10\" class=\"data row9 col10\" >0.460853</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col11\" class=\"data row9 col11\" >-0.441808</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col12\" class=\"data row9 col12\" >0.543993</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row9_col13\" class=\"data row9 col13\" >-0.468536</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0level0_row10\" class=\"row_heading level0 row10\" >PTRATIO</th>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col0\" class=\"data row10 col0\" >0.289946</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col1\" class=\"data row10 col1\" >-0.391679</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col2\" class=\"data row10 col2\" >0.383248</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col3\" class=\"data row10 col3\" >-0.121515</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col4\" class=\"data row10 col4\" >0.188933</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col5\" class=\"data row10 col5\" >-0.355501</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col6\" class=\"data row10 col6\" >0.261515</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col7\" class=\"data row10 col7\" >-0.232471</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col8\" class=\"data row10 col8\" >0.464741</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col9\" class=\"data row10 col9\" >0.460853</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col10\" class=\"data row10 col10\" >1</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col11\" class=\"data row10 col11\" >-0.177383</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col12\" class=\"data row10 col12\" >0.374044</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row10_col13\" class=\"data row10 col13\" >-0.507787</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0level0_row11\" class=\"row_heading level0 row11\" >B</th>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col0\" class=\"data row11 col0\" >-0.385064</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col1\" class=\"data row11 col1\" >0.17552</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col2\" class=\"data row11 col2\" >-0.356977</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col3\" class=\"data row11 col3\" >0.0487885</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col4\" class=\"data row11 col4\" >-0.380051</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col5\" class=\"data row11 col5\" >0.128069</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col6\" class=\"data row11 col6\" >-0.273534</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col7\" class=\"data row11 col7\" >0.291512</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col8\" class=\"data row11 col8\" >-0.444413</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col9\" class=\"data row11 col9\" >-0.441808</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col10\" class=\"data row11 col10\" >-0.177383</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col11\" class=\"data row11 col11\" >1</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col12\" class=\"data row11 col12\" >-0.366087</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row11_col13\" class=\"data row11 col13\" >0.333461</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0level0_row12\" class=\"row_heading level0 row12\" >LSTAT</th>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col0\" class=\"data row12 col0\" >0.455621</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col1\" class=\"data row12 col1\" >-0.412995</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col2\" class=\"data row12 col2\" >0.6038</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col3\" class=\"data row12 col3\" >-0.0539293</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col4\" class=\"data row12 col4\" >0.590879</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col5\" class=\"data row12 col5\" >-0.613808</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col6\" class=\"data row12 col6\" >0.602339</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col7\" class=\"data row12 col7\" >-0.496996</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col8\" class=\"data row12 col8\" >0.488676</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col9\" class=\"data row12 col9\" >0.543993</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col10\" class=\"data row12 col10\" >0.374044</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col11\" class=\"data row12 col11\" >-0.366087</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col12\" class=\"data row12 col12\" >1</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row12_col13\" class=\"data row12 col13\" >-0.737663</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0level0_row13\" class=\"row_heading level0 row13\" >target</th>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col0\" class=\"data row13 col0\" >-0.388305</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col1\" class=\"data row13 col1\" >0.360445</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col2\" class=\"data row13 col2\" >-0.483725</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col3\" class=\"data row13 col3\" >0.17526</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col4\" class=\"data row13 col4\" >-0.427321</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col5\" class=\"data row13 col5\" >0.69536</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col6\" class=\"data row13 col6\" >-0.376955</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col7\" class=\"data row13 col7\" >0.249929</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col8\" class=\"data row13 col8\" >-0.381626</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col9\" class=\"data row13 col9\" >-0.468536</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col10\" class=\"data row13 col10\" >-0.507787</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col11\" class=\"data row13 col11\" >0.333461</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col12\" class=\"data row13 col12\" >-0.737663</td>\n",
       "                        <td id=\"T_0fc3e19c_8e34_11ec_b30c_a0a4c53b5af0row13_col13\" class=\"data row13 col13\" >1</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x238a8d09ec8>"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "C.style.applymap(colour_large_values_red)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Here we see a high correlation between the RAD and TAX variables. This is quite interesting, as the variables themselves are not-obviously so related. Here is what the dataset's description has to say:\n",
    "\n",
    "\n",
    "        - RAD      index of accessibility to radial highways\n",
    "        - TAX      full-value property-tax rate per $10,000\n",
    "\n",
    "So it appears that a high accessibility to the highway results in a higher property tax rate."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Exercises\n",
    "\n",
    "1. Train a linear model using just the RAD and TAX variables, and examine the beta values. Train another two, this time using just RAD and another using just TAX. Note the difference in the beta values, indicating that the linear relationship was getting in the way of the linear model.\n",
    "2. Create a dataset with two independent variables ($X_1$ and $X_2$) and a dependent variable $Y$ with the following properties. What does the pairwise correlation look like, and how does this affect the linear regression model?\n",
    "    - $X_1$ has a high correlation to $Y$ \n",
    "    - $X_2$ has a high correlation to $Y$\n",
    "    "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "                            OLS Regression Results                            \n",
      "==============================================================================\n",
      "Dep. Variable:                 target   R-squared:                       0.741\n",
      "Model:                            OLS   Adj. R-squared:                  0.734\n",
      "Method:                 Least Squares   F-statistic:                     108.1\n",
      "Date:                Tue, 15 Feb 2022   Prob (F-statistic):          6.72e-135\n",
      "Time:                        19:20:24   Log-Likelihood:                -1498.8\n",
      "No. Observations:                 506   AIC:                             3026.\n",
      "Df Residuals:                     492   BIC:                             3085.\n",
      "Df Model:                          13                                         \n",
      "Covariance Type:            nonrobust                                         \n",
      "==============================================================================\n",
      "                 coef    std err          t      P>|t|      [0.025      0.975]\n",
      "------------------------------------------------------------------------------\n",
      "Intercept     36.4595      5.103      7.144      0.000      26.432      46.487\n",
      "AGE            0.0007      0.013      0.052      0.958      -0.025       0.027\n",
      "B              0.0093      0.003      3.467      0.001       0.004       0.015\n",
      "CHAS           2.6867      0.862      3.118      0.002       0.994       4.380\n",
      "CRIM          -0.1080      0.033     -3.287      0.001      -0.173      -0.043\n",
      "DIS           -1.4756      0.199     -7.398      0.000      -1.867      -1.084\n",
      "INDUS          0.0206      0.061      0.334      0.738      -0.100       0.141\n",
      "LSTAT         -0.5248      0.051    -10.347      0.000      -0.624      -0.425\n",
      "NOX          -17.7666      3.820     -4.651      0.000     -25.272     -10.262\n",
      "PTRATIO       -0.9527      0.131     -7.283      0.000      -1.210      -0.696\n",
      "RAD            0.3060      0.066      4.613      0.000       0.176       0.436\n",
      "RM             3.8099      0.418      9.116      0.000       2.989       4.631\n",
      "TAX           -0.0123      0.004     -3.280      0.001      -0.020      -0.005\n",
      "ZN             0.0464      0.014      3.382      0.001       0.019       0.073\n",
      "==============================================================================\n",
      "Omnibus:                      178.041   Durbin-Watson:                   1.078\n",
      "Prob(Omnibus):                  0.000   Jarque-Bera (JB):              783.126\n",
      "Skew:                           1.521   Prob(JB):                    8.84e-171\n",
      "Kurtosis:                       8.281   Cond. No.                     1.51e+04\n",
      "==============================================================================\n",
      "\n",
      "Warnings:\n",
      "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n",
      "[2] The condition number is large, 1.51e+04. This might indicate that there are\n",
      "strong multicollinearity or other numerical problems.\n",
      "                            OLS Regression Results                            \n",
      "==============================================================================\n",
      "Dep. Variable:                 target   R-squared:                       0.729\n",
      "Model:                            OLS   Adj. R-squared:                  0.723\n",
      "Method:                 Least Squares   F-statistic:                     110.8\n",
      "Date:                Tue, 15 Feb 2022   Prob (F-statistic):          1.92e-131\n",
      "Time:                        19:20:24   Log-Likelihood:                -1509.5\n",
      "No. Observations:                 506   AIC:                             3045.\n",
      "Df Residuals:                     493   BIC:                             3100.\n",
      "Df Model:                          12                                         \n",
      "Covariance Type:            nonrobust                                         \n",
      "==============================================================================\n",
      "                 coef    std err          t      P>|t|      [0.025      0.975]\n",
      "------------------------------------------------------------------------------\n",
      "Intercept     29.7594      4.992      5.961      0.000      19.951      39.568\n",
      "AGE           -0.0039      0.013     -0.292      0.770      -0.030       0.022\n",
      "B              0.0084      0.003      3.079      0.002       0.003       0.014\n",
      "CHAS           3.1144      0.874      3.563      0.000       1.397       4.832\n",
      "CRIM          -0.0675      0.032     -2.090      0.037      -0.131      -0.004\n",
      "DIS           -1.4902      0.203     -7.323      0.000      -1.890      -1.090\n",
      "INDUS         -0.0584      0.060     -0.969      0.333      -0.177       0.060\n",
      "LSTAT         -0.5164      0.052     -9.986      0.000      -0.618      -0.415\n",
      "NOX          -15.2618      3.858     -3.956      0.000     -22.842      -7.682\n",
      "PTRATIO       -0.8387      0.131     -6.398      0.000      -1.096      -0.581\n",
      "RM             4.1146      0.421      9.772      0.000       3.287       4.942\n",
      "TAX            0.0013      0.002      0.565      0.573      -0.003       0.006\n",
      "ZN             0.0397      0.014      2.852      0.005       0.012       0.067\n",
      "==============================================================================\n",
      "Omnibus:                      189.296   Durbin-Watson:                   1.059\n",
      "Prob(Omnibus):                  0.000   Jarque-Bera (JB):              907.772\n",
      "Skew:                           1.596   Prob(JB):                    7.58e-198\n",
      "Kurtosis:                       8.733   Cond. No.                     1.46e+04\n",
      "==============================================================================\n",
      "\n",
      "Warnings:\n",
      "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n",
      "[2] The condition number is large, 1.46e+04. This might indicate that there are\n",
      "strong multicollinearity or other numerical problems.\n",
      "                            OLS Regression Results                            \n",
      "==============================================================================\n",
      "Dep. Variable:                 target   R-squared:                       0.735\n",
      "Model:                            OLS   Adj. R-squared:                  0.729\n",
      "Method:                 Least Squares   F-statistic:                     113.9\n",
      "Date:                Tue, 15 Feb 2022   Prob (F-statistic):          1.21e-133\n",
      "Time:                        19:20:24   Log-Likelihood:                -1504.3\n",
      "No. Observations:                 506   AIC:                             3035.\n",
      "Df Residuals:                     493   BIC:                             3089.\n",
      "Df Model:                          12                                         \n",
      "Covariance Type:            nonrobust                                         \n",
      "==============================================================================\n",
      "                 coef    std err          t      P>|t|      [0.025      0.975]\n",
      "------------------------------------------------------------------------------\n",
      "Intercept     34.6286      5.123      6.760      0.000      24.563      44.694\n",
      "AGE           -0.0006      0.013     -0.045      0.964      -0.027       0.026\n",
      "B              0.0095      0.003      3.521      0.000       0.004       0.015\n",
      "CHAS           3.0292      0.864      3.507      0.000       1.332       4.726\n",
      "CRIM          -0.1067      0.033     -3.216      0.001      -0.172      -0.042\n",
      "DIS           -1.4883      0.201     -7.390      0.000      -1.884      -1.093\n",
      "INDUS         -0.0678      0.056     -1.214      0.225      -0.177       0.042\n",
      "LSTAT         -0.5222      0.051    -10.198      0.000      -0.623      -0.422\n",
      "NOX          -18.7012      3.847     -4.862      0.000     -26.259     -11.143\n",
      "PTRATIO       -0.9851      0.132     -7.478      0.000      -1.244      -0.726\n",
      "RAD            0.1346      0.041      3.262      0.001       0.054       0.216\n",
      "RM             3.9117      0.421      9.294      0.000       3.085       4.739\n",
      "ZN             0.0364      0.014      2.692      0.007       0.010       0.063\n",
      "==============================================================================\n",
      "Omnibus:                      168.699   Durbin-Watson:                   1.089\n",
      "Prob(Omnibus):                  0.000   Jarque-Bera (JB):              702.173\n",
      "Skew:                           1.452   Prob(JB):                    3.35e-153\n",
      "Kurtosis:                       7.987   Cond. No.                     1.01e+04\n",
      "==============================================================================\n",
      "\n",
      "Warnings:\n",
      "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n",
      "[2] The condition number is large, 1.01e+04. This might indicate that there are\n",
      "strong multicollinearity or other numerical problems.\n"
     ]
    }
   ],
   "source": [
    "import statsmodels.formula.api as smf\n",
    "\n",
    "columns1 = \"+\".join(boston.columns.difference([\"target\"]))\n",
    "formula1 = \"target ~\" + columns1\n",
    "all_model = smf.ols(formula=formula1, data=boston).fit()\n",
    "print(all_model.summary())\n",
    "\n",
    "columns2 = \"+\".join(boston.columns.difference([\"target\"]))\n",
    "formula2 = \"target ~\" + columns2 + \"-RAD\"\n",
    "model2 = smf.ols(formula=formula2, data=boston).fit()\n",
    "print(model2.summary())\n",
    "\n",
    "columns3 = \"+\".join(boston.columns.difference([\"target\"]))\n",
    "formula3 = \"target ~\" + columns3 + \"-TAX\"\n",
    "model3 = smf.ols(formula=formula3, data=boston).fit()\n",
    "print(model3.summary())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table class=\"simpletable\">\n",
       "<caption>OLS Regression Results</caption>\n",
       "<tr>\n",
       "  <th>Dep. Variable:</th>            <td>Y</td>        <th>  R-squared:         </th>  <td>   1.000</td> \n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Model:</th>                   <td>OLS</td>       <th>  Adj. R-squared:    </th>  <td>   1.000</td> \n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Method:</th>             <td>Least Squares</td>  <th>  F-statistic:       </th>  <td>1.366e+32</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Date:</th>             <td>Tue, 15 Feb 2022</td> <th>  Prob (F-statistic):</th>   <td>  0.00</td>  \n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Time:</th>                 <td>19:38:27</td>     <th>  Log-Likelihood:    </th>  <td>  33383.</td> \n",
       "</tr>\n",
       "<tr>\n",
       "  <th>No. Observations:</th>      <td>  1000</td>      <th>  AIC:               </th> <td>-6.676e+04</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Df Residuals:</th>          <td>   998</td>      <th>  BIC:               </th> <td>-6.675e+04</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Df Model:</th>              <td>     1</td>      <th>                     </th>      <td> </td>    \n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Covariance Type:</th>      <td>nonrobust</td>    <th>                     </th>      <td> </td>    \n",
       "</tr>\n",
       "</table>\n",
       "<table class=\"simpletable\">\n",
       "<tr>\n",
       "      <td></td>         <th>coef</th>     <th>std err</th>      <th>t</th>      <th>P>|t|</th>  <th>[0.025</th>    <th>0.975]</th>  \n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Intercept</th> <td>   -0.9677</td> <td>  1.1e-16</td> <td>-8.84e+15</td> <td> 0.000</td> <td>   -0.968</td> <td>   -0.968</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>X1</th>        <td>    0.1935</td> <td> 1.32e-17</td> <td> 1.46e+16</td> <td> 0.000</td> <td>    0.194</td> <td>    0.194</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>X2</th>        <td>    0.8387</td> <td> 9.34e-17</td> <td> 8.98e+15</td> <td> 0.000</td> <td>    0.839</td> <td>    0.839</td>\n",
       "</tr>\n",
       "</table>\n",
       "<table class=\"simpletable\">\n",
       "<tr>\n",
       "  <th>Omnibus:</th>       <td>41.789</td> <th>  Durbin-Watson:     </th> <td>   0.093</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Prob(Omnibus):</th> <td> 0.000</td> <th>  Jarque-Bera (JB):  </th> <td>  18.512</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Skew:</th>          <td>-0.054</td> <th>  Prob(JB):          </th> <td>9.56e-05</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Kurtosis:</th>      <td> 2.342</td> <th>  Cond. No.          </th> <td>8.91e+16</td>\n",
       "</tr>\n",
       "</table><br/><br/>Warnings:<br/>[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.<br/>[2] The smallest eigenvalue is 5.57e-30. This might indicate that there are<br/>strong multicollinearity problems or that the design matrix is singular."
      ],
      "text/plain": [
       "<class 'statsmodels.iolib.summary.Summary'>\n",
       "\"\"\"\n",
       "                            OLS Regression Results                            \n",
       "==============================================================================\n",
       "Dep. Variable:                      Y   R-squared:                       1.000\n",
       "Model:                            OLS   Adj. R-squared:                  1.000\n",
       "Method:                 Least Squares   F-statistic:                 1.366e+32\n",
       "Date:                Tue, 15 Feb 2022   Prob (F-statistic):               0.00\n",
       "Time:                        19:38:27   Log-Likelihood:                 33383.\n",
       "No. Observations:                1000   AIC:                        -6.676e+04\n",
       "Df Residuals:                     998   BIC:                        -6.675e+04\n",
       "Df Model:                           1                                         \n",
       "Covariance Type:            nonrobust                                         \n",
       "==============================================================================\n",
       "                 coef    std err          t      P>|t|      [0.025      0.975]\n",
       "------------------------------------------------------------------------------\n",
       "Intercept     -0.9677    1.1e-16  -8.84e+15      0.000      -0.968      -0.968\n",
       "X1             0.1935   1.32e-17   1.46e+16      0.000       0.194       0.194\n",
       "X2             0.8387   9.34e-17   8.98e+15      0.000       0.839       0.839\n",
       "==============================================================================\n",
       "Omnibus:                       41.789   Durbin-Watson:                   0.093\n",
       "Prob(Omnibus):                  0.000   Jarque-Bera (JB):               18.512\n",
       "Skew:                          -0.054   Prob(JB):                     9.56e-05\n",
       "Kurtosis:                       2.342   Cond. No.                     8.91e+16\n",
       "==============================================================================\n",
       "\n",
       "Warnings:\n",
       "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n",
       "[2] The smallest eigenvalue is 5.57e-30. This might indicate that there are\n",
       "strong multicollinearity problems or that the design matrix is singular.\n",
       "\"\"\""
      ]
     },
     "execution_count": 42,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#just copied the solution here, interesting though with the beta values adding to 1, but seems somewhat intutive considering X1 and X2 are functions of Y\n",
    "Y = np.random.random(1000)\n",
    "\n",
    "X1 = Y * 3 + 5\n",
    "X2 = Y / 2\n",
    "\n",
    "data = pd.Series({\"X1\": X1, \"X2\": X2, \"Y\": Y})\n",
    "\n",
    "est_corr = smf.ols(formula=\"Y ~ X1 + X2\", data=data).fit()\n",
    "est_corr.summary()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "*For solutions, see `solutions/correlations.py`*"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Multicolinearity\n",
    "\n",
    "Multicolinearity is simply the case where there are **multi**ple **colinearities** in the dataset - that is, many of the variables are related. In this case, the affect on the result is usually higher and may affect the model more. However, the process for managing stays the same as the points mentioned above.\n",
    "\n",
    "It is also worth noting that multicolinearity and colinearity, at least in the practical sense, are *degrees* and not absolutes. A variable may have lesser or greater colinearity, but there is no threshold above which we say that the colinearity exists. Usually, we would say values above 0.9 definitely have it, and values lesser may have it.\n",
    "\n",
    "For instance, we can repeat the above table to suddenly \"observe multicolinearity\":\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col0 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col1 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col2 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col4 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col7 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col9 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col3 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col2 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col4 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col6 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col7 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col5 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col4 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col6 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col7 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col2 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col4 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col6 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col7 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col8 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col9 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col2 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col8 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col9 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col10 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col11 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col12 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col13 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col12 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col13 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col0 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col1 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col2 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col3 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col4 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col5 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col6 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col7 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col8 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col9 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col10 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col11 {\n",
       "            background-color:  lightgrey;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col12 {\n",
       "            background-color:  red;\n",
       "        }    #T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col13 {\n",
       "            background-color:  red;\n",
       "        }</style><table id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0\" ><thead>    <tr>        <th class=\"blank level0\" ></th>        <th class=\"col_heading level0 col0\" >CRIM</th>        <th class=\"col_heading level0 col1\" >ZN</th>        <th class=\"col_heading level0 col2\" >INDUS</th>        <th class=\"col_heading level0 col3\" >CHAS</th>        <th class=\"col_heading level0 col4\" >NOX</th>        <th class=\"col_heading level0 col5\" >RM</th>        <th class=\"col_heading level0 col6\" >AGE</th>        <th class=\"col_heading level0 col7\" >DIS</th>        <th class=\"col_heading level0 col8\" >RAD</th>        <th class=\"col_heading level0 col9\" >TAX</th>        <th class=\"col_heading level0 col10\" >PTRATIO</th>        <th class=\"col_heading level0 col11\" >B</th>        <th class=\"col_heading level0 col12\" >LSTAT</th>        <th class=\"col_heading level0 col13\" >target</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                        <th id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0level0_row0\" class=\"row_heading level0 row0\" >CRIM</th>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col0\" class=\"data row0 col0\" >1</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col1\" class=\"data row0 col1\" >-0.200469</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col2\" class=\"data row0 col2\" >0.406583</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col3\" class=\"data row0 col3\" >-0.0558916</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col4\" class=\"data row0 col4\" >0.420972</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col5\" class=\"data row0 col5\" >-0.219247</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col6\" class=\"data row0 col6\" >0.352734</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col7\" class=\"data row0 col7\" >-0.37967</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col8\" class=\"data row0 col8\" >0.625505</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col9\" class=\"data row0 col9\" >0.582764</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col10\" class=\"data row0 col10\" >0.289946</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col11\" class=\"data row0 col11\" >-0.385064</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col12\" class=\"data row0 col12\" >0.455621</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row0_col13\" class=\"data row0 col13\" >-0.388305</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0level0_row1\" class=\"row_heading level0 row1\" >ZN</th>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col0\" class=\"data row1 col0\" >-0.200469</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col1\" class=\"data row1 col1\" >1</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col2\" class=\"data row1 col2\" >-0.533828</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col3\" class=\"data row1 col3\" >-0.0426967</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col4\" class=\"data row1 col4\" >-0.516604</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col5\" class=\"data row1 col5\" >0.311991</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col6\" class=\"data row1 col6\" >-0.569537</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col7\" class=\"data row1 col7\" >0.664408</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col8\" class=\"data row1 col8\" >-0.311948</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col9\" class=\"data row1 col9\" >-0.314563</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col10\" class=\"data row1 col10\" >-0.391679</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col11\" class=\"data row1 col11\" >0.17552</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col12\" class=\"data row1 col12\" >-0.412995</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row1_col13\" class=\"data row1 col13\" >0.360445</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0level0_row2\" class=\"row_heading level0 row2\" >INDUS</th>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col0\" class=\"data row2 col0\" >0.406583</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col1\" class=\"data row2 col1\" >-0.533828</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col2\" class=\"data row2 col2\" >1</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col3\" class=\"data row2 col3\" >0.062938</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col4\" class=\"data row2 col4\" >0.763651</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col5\" class=\"data row2 col5\" >-0.391676</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col6\" class=\"data row2 col6\" >0.644779</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col7\" class=\"data row2 col7\" >-0.708027</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col8\" class=\"data row2 col8\" >0.595129</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col9\" class=\"data row2 col9\" >0.72076</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col10\" class=\"data row2 col10\" >0.383248</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col11\" class=\"data row2 col11\" >-0.356977</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col12\" class=\"data row2 col12\" >0.6038</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row2_col13\" class=\"data row2 col13\" >-0.483725</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0level0_row3\" class=\"row_heading level0 row3\" >CHAS</th>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col0\" class=\"data row3 col0\" >-0.0558916</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col1\" class=\"data row3 col1\" >-0.0426967</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col2\" class=\"data row3 col2\" >0.062938</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col3\" class=\"data row3 col3\" >1</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col4\" class=\"data row3 col4\" >0.0912028</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col5\" class=\"data row3 col5\" >0.0912512</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col6\" class=\"data row3 col6\" >0.0865178</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col7\" class=\"data row3 col7\" >-0.0991758</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col8\" class=\"data row3 col8\" >-0.00736824</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col9\" class=\"data row3 col9\" >-0.0355865</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col10\" class=\"data row3 col10\" >-0.121515</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col11\" class=\"data row3 col11\" >0.0487885</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col12\" class=\"data row3 col12\" >-0.0539293</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row3_col13\" class=\"data row3 col13\" >0.17526</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0level0_row4\" class=\"row_heading level0 row4\" >NOX</th>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col0\" class=\"data row4 col0\" >0.420972</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col1\" class=\"data row4 col1\" >-0.516604</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col2\" class=\"data row4 col2\" >0.763651</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col3\" class=\"data row4 col3\" >0.0912028</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col4\" class=\"data row4 col4\" >1</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col5\" class=\"data row4 col5\" >-0.302188</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col6\" class=\"data row4 col6\" >0.73147</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col7\" class=\"data row4 col7\" >-0.76923</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col8\" class=\"data row4 col8\" >0.611441</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col9\" class=\"data row4 col9\" >0.668023</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col10\" class=\"data row4 col10\" >0.188933</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col11\" class=\"data row4 col11\" >-0.380051</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col12\" class=\"data row4 col12\" >0.590879</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row4_col13\" class=\"data row4 col13\" >-0.427321</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0level0_row5\" class=\"row_heading level0 row5\" >RM</th>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col0\" class=\"data row5 col0\" >-0.219247</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col1\" class=\"data row5 col1\" >0.311991</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col2\" class=\"data row5 col2\" >-0.391676</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col3\" class=\"data row5 col3\" >0.0912512</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col4\" class=\"data row5 col4\" >-0.302188</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col5\" class=\"data row5 col5\" >1</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col6\" class=\"data row5 col6\" >-0.240265</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col7\" class=\"data row5 col7\" >0.205246</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col8\" class=\"data row5 col8\" >-0.209847</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col9\" class=\"data row5 col9\" >-0.292048</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col10\" class=\"data row5 col10\" >-0.355501</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col11\" class=\"data row5 col11\" >0.128069</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col12\" class=\"data row5 col12\" >-0.613808</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row5_col13\" class=\"data row5 col13\" >0.69536</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0level0_row6\" class=\"row_heading level0 row6\" >AGE</th>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col0\" class=\"data row6 col0\" >0.352734</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col1\" class=\"data row6 col1\" >-0.569537</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col2\" class=\"data row6 col2\" >0.644779</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col3\" class=\"data row6 col3\" >0.0865178</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col4\" class=\"data row6 col4\" >0.73147</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col5\" class=\"data row6 col5\" >-0.240265</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col6\" class=\"data row6 col6\" >1</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col7\" class=\"data row6 col7\" >-0.747881</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col8\" class=\"data row6 col8\" >0.456022</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col9\" class=\"data row6 col9\" >0.506456</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col10\" class=\"data row6 col10\" >0.261515</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col11\" class=\"data row6 col11\" >-0.273534</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col12\" class=\"data row6 col12\" >0.602339</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row6_col13\" class=\"data row6 col13\" >-0.376955</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0level0_row7\" class=\"row_heading level0 row7\" >DIS</th>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col0\" class=\"data row7 col0\" >-0.37967</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col1\" class=\"data row7 col1\" >0.664408</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col2\" class=\"data row7 col2\" >-0.708027</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col3\" class=\"data row7 col3\" >-0.0991758</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col4\" class=\"data row7 col4\" >-0.76923</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col5\" class=\"data row7 col5\" >0.205246</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col6\" class=\"data row7 col6\" >-0.747881</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col7\" class=\"data row7 col7\" >1</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col8\" class=\"data row7 col8\" >-0.494588</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col9\" class=\"data row7 col9\" >-0.534432</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col10\" class=\"data row7 col10\" >-0.232471</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col11\" class=\"data row7 col11\" >0.291512</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col12\" class=\"data row7 col12\" >-0.496996</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row7_col13\" class=\"data row7 col13\" >0.249929</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0level0_row8\" class=\"row_heading level0 row8\" >RAD</th>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col0\" class=\"data row8 col0\" >0.625505</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col1\" class=\"data row8 col1\" >-0.311948</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col2\" class=\"data row8 col2\" >0.595129</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col3\" class=\"data row8 col3\" >-0.00736824</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col4\" class=\"data row8 col4\" >0.611441</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col5\" class=\"data row8 col5\" >-0.209847</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col6\" class=\"data row8 col6\" >0.456022</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col7\" class=\"data row8 col7\" >-0.494588</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col8\" class=\"data row8 col8\" >1</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col9\" class=\"data row8 col9\" >0.910228</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col10\" class=\"data row8 col10\" >0.464741</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col11\" class=\"data row8 col11\" >-0.444413</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col12\" class=\"data row8 col12\" >0.488676</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row8_col13\" class=\"data row8 col13\" >-0.381626</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0level0_row9\" class=\"row_heading level0 row9\" >TAX</th>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col0\" class=\"data row9 col0\" >0.582764</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col1\" class=\"data row9 col1\" >-0.314563</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col2\" class=\"data row9 col2\" >0.72076</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col3\" class=\"data row9 col3\" >-0.0355865</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col4\" class=\"data row9 col4\" >0.668023</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col5\" class=\"data row9 col5\" >-0.292048</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col6\" class=\"data row9 col6\" >0.506456</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col7\" class=\"data row9 col7\" >-0.534432</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col8\" class=\"data row9 col8\" >0.910228</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col9\" class=\"data row9 col9\" >1</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col10\" class=\"data row9 col10\" >0.460853</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col11\" class=\"data row9 col11\" >-0.441808</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col12\" class=\"data row9 col12\" >0.543993</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row9_col13\" class=\"data row9 col13\" >-0.468536</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0level0_row10\" class=\"row_heading level0 row10\" >PTRATIO</th>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col0\" class=\"data row10 col0\" >0.289946</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col1\" class=\"data row10 col1\" >-0.391679</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col2\" class=\"data row10 col2\" >0.383248</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col3\" class=\"data row10 col3\" >-0.121515</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col4\" class=\"data row10 col4\" >0.188933</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col5\" class=\"data row10 col5\" >-0.355501</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col6\" class=\"data row10 col6\" >0.261515</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col7\" class=\"data row10 col7\" >-0.232471</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col8\" class=\"data row10 col8\" >0.464741</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col9\" class=\"data row10 col9\" >0.460853</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col10\" class=\"data row10 col10\" >1</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col11\" class=\"data row10 col11\" >-0.177383</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col12\" class=\"data row10 col12\" >0.374044</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row10_col13\" class=\"data row10 col13\" >-0.507787</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0level0_row11\" class=\"row_heading level0 row11\" >B</th>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col0\" class=\"data row11 col0\" >-0.385064</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col1\" class=\"data row11 col1\" >0.17552</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col2\" class=\"data row11 col2\" >-0.356977</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col3\" class=\"data row11 col3\" >0.0487885</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col4\" class=\"data row11 col4\" >-0.380051</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col5\" class=\"data row11 col5\" >0.128069</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col6\" class=\"data row11 col6\" >-0.273534</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col7\" class=\"data row11 col7\" >0.291512</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col8\" class=\"data row11 col8\" >-0.444413</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col9\" class=\"data row11 col9\" >-0.441808</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col10\" class=\"data row11 col10\" >-0.177383</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col11\" class=\"data row11 col11\" >1</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col12\" class=\"data row11 col12\" >-0.366087</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row11_col13\" class=\"data row11 col13\" >0.333461</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0level0_row12\" class=\"row_heading level0 row12\" >LSTAT</th>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col0\" class=\"data row12 col0\" >0.455621</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col1\" class=\"data row12 col1\" >-0.412995</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col2\" class=\"data row12 col2\" >0.6038</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col3\" class=\"data row12 col3\" >-0.0539293</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col4\" class=\"data row12 col4\" >0.590879</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col5\" class=\"data row12 col5\" >-0.613808</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col6\" class=\"data row12 col6\" >0.602339</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col7\" class=\"data row12 col7\" >-0.496996</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col8\" class=\"data row12 col8\" >0.488676</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col9\" class=\"data row12 col9\" >0.543993</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col10\" class=\"data row12 col10\" >0.374044</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col11\" class=\"data row12 col11\" >-0.366087</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col12\" class=\"data row12 col12\" >1</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row12_col13\" class=\"data row12 col13\" >-0.737663</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0level0_row13\" class=\"row_heading level0 row13\" >target</th>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col0\" class=\"data row13 col0\" >-0.388305</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col1\" class=\"data row13 col1\" >0.360445</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col2\" class=\"data row13 col2\" >-0.483725</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col3\" class=\"data row13 col3\" >0.17526</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col4\" class=\"data row13 col4\" >-0.427321</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col5\" class=\"data row13 col5\" >0.69536</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col6\" class=\"data row13 col6\" >-0.376955</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col7\" class=\"data row13 col7\" >0.249929</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col8\" class=\"data row13 col8\" >-0.381626</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col9\" class=\"data row13 col9\" >-0.468536</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col10\" class=\"data row13 col10\" >-0.507787</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col11\" class=\"data row13 col11\" >0.333461</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col12\" class=\"data row13 col12\" >-0.737663</td>\n",
       "                        <td id=\"T_b1cb97c2_8e3a_11ec_bc3a_a0a4c53b5af0row13_col13\" class=\"data row13 col13\" >1</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x238b8c7a9c8>"
      ]
     },
     "execution_count": 43,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "def colour_medium_values_red(val):\n",
    "    color = 'red' if abs(val) > 0.7 else 'lightgrey'\n",
    "    return 'background-color: %s' % color\n",
    "C.style.applymap(colour_medium_values_red)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "In this case, the \"new\" colinear variable pairs will likely have a lesser effect on the result, but they were always there, having some effect, regardless of how we define colinearity. It is for this reason, the degrees of multicollinearity, that there is no specific \"test\" that can say definitively that there is multicollinearity, or whether it is causing a problem.\n",
    "\n",
    "Let's review the model we saw in the last module:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [],
   "source": [
    "import statsmodels.formula.api as smf\n",
    "est = smf.ols(formula='target ~ CRIM + ZN + INDUS + CHAS + NOX + RM + AGE + DIS + RAD + TAX + PTRATIO + B + LSTAT', \n",
    "              data=boston).fit()  # Does the constant for us"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table class=\"simpletable\">\n",
       "<caption>OLS Regression Results</caption>\n",
       "<tr>\n",
       "  <th>Dep. Variable:</th>         <td>target</td>      <th>  R-squared:         </th> <td>   0.741</td> \n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Model:</th>                   <td>OLS</td>       <th>  Adj. R-squared:    </th> <td>   0.734</td> \n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Method:</th>             <td>Least Squares</td>  <th>  F-statistic:       </th> <td>   108.1</td> \n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Date:</th>             <td>Tue, 15 Feb 2022</td> <th>  Prob (F-statistic):</th> <td>6.72e-135</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Time:</th>                 <td>19:39:08</td>     <th>  Log-Likelihood:    </th> <td> -1498.8</td> \n",
       "</tr>\n",
       "<tr>\n",
       "  <th>No. Observations:</th>      <td>   506</td>      <th>  AIC:               </th> <td>   3026.</td> \n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Df Residuals:</th>          <td>   492</td>      <th>  BIC:               </th> <td>   3085.</td> \n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Df Model:</th>              <td>    13</td>      <th>                     </th>     <td> </td>    \n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Covariance Type:</th>      <td>nonrobust</td>    <th>                     </th>     <td> </td>    \n",
       "</tr>\n",
       "</table>\n",
       "<table class=\"simpletable\">\n",
       "<tr>\n",
       "      <td></td>         <th>coef</th>     <th>std err</th>      <th>t</th>      <th>P>|t|</th>  <th>[0.025</th>    <th>0.975]</th>  \n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Intercept</th> <td>   36.4595</td> <td>    5.103</td> <td>    7.144</td> <td> 0.000</td> <td>   26.432</td> <td>   46.487</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>CRIM</th>      <td>   -0.1080</td> <td>    0.033</td> <td>   -3.287</td> <td> 0.001</td> <td>   -0.173</td> <td>   -0.043</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>ZN</th>        <td>    0.0464</td> <td>    0.014</td> <td>    3.382</td> <td> 0.001</td> <td>    0.019</td> <td>    0.073</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>INDUS</th>     <td>    0.0206</td> <td>    0.061</td> <td>    0.334</td> <td> 0.738</td> <td>   -0.100</td> <td>    0.141</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>CHAS</th>      <td>    2.6867</td> <td>    0.862</td> <td>    3.118</td> <td> 0.002</td> <td>    0.994</td> <td>    4.380</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>NOX</th>       <td>  -17.7666</td> <td>    3.820</td> <td>   -4.651</td> <td> 0.000</td> <td>  -25.272</td> <td>  -10.262</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>RM</th>        <td>    3.8099</td> <td>    0.418</td> <td>    9.116</td> <td> 0.000</td> <td>    2.989</td> <td>    4.631</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>AGE</th>       <td>    0.0007</td> <td>    0.013</td> <td>    0.052</td> <td> 0.958</td> <td>   -0.025</td> <td>    0.027</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>DIS</th>       <td>   -1.4756</td> <td>    0.199</td> <td>   -7.398</td> <td> 0.000</td> <td>   -1.867</td> <td>   -1.084</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>RAD</th>       <td>    0.3060</td> <td>    0.066</td> <td>    4.613</td> <td> 0.000</td> <td>    0.176</td> <td>    0.436</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>TAX</th>       <td>   -0.0123</td> <td>    0.004</td> <td>   -3.280</td> <td> 0.001</td> <td>   -0.020</td> <td>   -0.005</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>PTRATIO</th>   <td>   -0.9527</td> <td>    0.131</td> <td>   -7.283</td> <td> 0.000</td> <td>   -1.210</td> <td>   -0.696</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>B</th>         <td>    0.0093</td> <td>    0.003</td> <td>    3.467</td> <td> 0.001</td> <td>    0.004</td> <td>    0.015</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>LSTAT</th>     <td>   -0.5248</td> <td>    0.051</td> <td>  -10.347</td> <td> 0.000</td> <td>   -0.624</td> <td>   -0.425</td>\n",
       "</tr>\n",
       "</table>\n",
       "<table class=\"simpletable\">\n",
       "<tr>\n",
       "  <th>Omnibus:</th>       <td>178.041</td> <th>  Durbin-Watson:     </th> <td>   1.078</td> \n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Prob(Omnibus):</th> <td> 0.000</td>  <th>  Jarque-Bera (JB):  </th> <td> 783.126</td> \n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Skew:</th>          <td> 1.521</td>  <th>  Prob(JB):          </th> <td>8.84e-171</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Kurtosis:</th>      <td> 8.281</td>  <th>  Cond. No.          </th> <td>1.51e+04</td> \n",
       "</tr>\n",
       "</table><br/><br/>Warnings:<br/>[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.<br/>[2] The condition number is large, 1.51e+04. This might indicate that there are<br/>strong multicollinearity or other numerical problems."
      ],
      "text/plain": [
       "<class 'statsmodels.iolib.summary.Summary'>\n",
       "\"\"\"\n",
       "                            OLS Regression Results                            \n",
       "==============================================================================\n",
       "Dep. Variable:                 target   R-squared:                       0.741\n",
       "Model:                            OLS   Adj. R-squared:                  0.734\n",
       "Method:                 Least Squares   F-statistic:                     108.1\n",
       "Date:                Tue, 15 Feb 2022   Prob (F-statistic):          6.72e-135\n",
       "Time:                        19:39:08   Log-Likelihood:                -1498.8\n",
       "No. Observations:                 506   AIC:                             3026.\n",
       "Df Residuals:                     492   BIC:                             3085.\n",
       "Df Model:                          13                                         \n",
       "Covariance Type:            nonrobust                                         \n",
       "==============================================================================\n",
       "                 coef    std err          t      P>|t|      [0.025      0.975]\n",
       "------------------------------------------------------------------------------\n",
       "Intercept     36.4595      5.103      7.144      0.000      26.432      46.487\n",
       "CRIM          -0.1080      0.033     -3.287      0.001      -0.173      -0.043\n",
       "ZN             0.0464      0.014      3.382      0.001       0.019       0.073\n",
       "INDUS          0.0206      0.061      0.334      0.738      -0.100       0.141\n",
       "CHAS           2.6867      0.862      3.118      0.002       0.994       4.380\n",
       "NOX          -17.7666      3.820     -4.651      0.000     -25.272     -10.262\n",
       "RM             3.8099      0.418      9.116      0.000       2.989       4.631\n",
       "AGE            0.0007      0.013      0.052      0.958      -0.025       0.027\n",
       "DIS           -1.4756      0.199     -7.398      0.000      -1.867      -1.084\n",
       "RAD            0.3060      0.066      4.613      0.000       0.176       0.436\n",
       "TAX           -0.0123      0.004     -3.280      0.001      -0.020      -0.005\n",
       "PTRATIO       -0.9527      0.131     -7.283      0.000      -1.210      -0.696\n",
       "B              0.0093      0.003      3.467      0.001       0.004       0.015\n",
       "LSTAT         -0.5248      0.051    -10.347      0.000      -0.624      -0.425\n",
       "==============================================================================\n",
       "Omnibus:                      178.041   Durbin-Watson:                   1.078\n",
       "Prob(Omnibus):                  0.000   Jarque-Bera (JB):              783.126\n",
       "Skew:                           1.521   Prob(JB):                    8.84e-171\n",
       "Kurtosis:                       8.281   Cond. No.                     1.51e+04\n",
       "==============================================================================\n",
       "\n",
       "Warnings:\n",
       "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n",
       "[2] The condition number is large, 1.51e+04. This might indicate that there are\n",
       "strong multicollinearity or other numerical problems.\n",
       "\"\"\""
      ]
     },
     "execution_count": 45,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "est.summary()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can see that a warning has been produced indicating there there may be strong multicollinearity (or other numerical problems, but we will investigate the multicollinearity). The \"condition\" number is very large:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "15113.517599135064"
      ]
     },
     "execution_count": 46,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "est.condition_number   # In general, values above 20 indicate a problem"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Another way to see if multicollinearity is causing a problem is to check if the overall predictive power ($R^2$) appears high, but the individual t-statistics for each variable are low, having very wide confidence intervals. This indicates multicollinearity is likely at work, as the individual variables do not have much predictive power, but the overall model is still working.\n",
    "\n",
    "As mentioned earlier, any non-perfect multicollinearity still gives a good OLS estimator. What is perhaps surprising, is that such a model is still the Best Linear Unbiased Estimator for that model. This idea of OLS producing the Best Linear Unbiased Estimator comes from the Gauss-Markov theorem and is commonly referred to as the OLS being **BLUE**. This shows that for the given inputs, the OLS estimator produces the best model it can. Note, however, there may be a better combination of features or some other data manipulation that produces a better result (such as taking the log values of the inputs)."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Exercises\n",
    "\n",
    "1. Research the Gauss-Markov theorem for BLUE. What are the key assumptions behind this finding? You'll see the word \"homoscedastic\", which we will investigate further in later modules.\n",
    "\n",
    "\n",
    "#### Extended exercise\n",
    "Another way to check multicollinearity is to see how stable coefficients for your input variables are when you change the sample of data. On this front, write code that performs the following test:\n",
    "\n",
    "1. Take a sample and compute the estimator using OLS\n",
    "2. Extract all coefficients from the model (check the `statsmodels` documentation)\n",
    "3. Repeat steps 1 & 2 many times (on the order of 100 or so should be fine)\n",
    "4. Plot the distribution of coefficients for each variable on separate graphs\n",
    "\n",
    "If there is a wide range in the values, multicollinarity may be a problem.\n",
    "\n",
    "Other tests for multicollinearity include altering the model slightly and observing large changes in the coefficients, particularly is the sign of the coefficient changes, i.e. a variable had a positive coefficient, and adding/removing a different, unrelated variable makes it suddenly negative - indicative of a problem."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Intercept    23.236584\n",
      "CRIM         -0.129848\n",
      "ZN            0.012949\n",
      "INDUS        -0.029862\n",
      "CHAS         -2.184735\n",
      "NOX          -7.427196\n",
      "RM            5.040470\n",
      "AGE          -0.034978\n",
      "DIS          -0.814954\n",
      "RAD           0.270592\n",
      "TAX          -0.012100\n",
      "PTRATIO      -1.048337\n",
      "B             0.008887\n",
      "LSTAT        -0.288276\n",
      "dtype: float64\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1080x1080 with 15 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Extended exercise (copied off solutions)\n",
    "\n",
    "def run_experiment(data, target_variable_name='target', sample_size=100):\n",
    "    \"\"\"Fits an OLS to the data, predicting the target from all other variables\n",
    "    \"\"\"\n",
    "    sample = data.sample(sample_size)\n",
    "    \n",
    "    column_names = [col for col in data.columns if col != target_variable_name]\n",
    "    # Create formula, predicting target from the sum of all others\n",
    "    formula = \"{} ~ {}\".format(target_variable_name, str.join(\" + \", column_names))\n",
    "    model = smf.ols(formula=formula, data=sample).fit()\n",
    "    \n",
    "    return model.params\n",
    "\n",
    "\n",
    "# example: \n",
    "print(run_experiment(boston))\n",
    "\n",
    "# Run many times, join results in a dataframe\n",
    "results = pd.concat([run_experiment(boston) for i in range(100)], axis=1)\n",
    "\n",
    "columns = results.index.values\n",
    "n_columns = len(columns)\n",
    "\n",
    "n_columns\n",
    "\n",
    "n_rows, n_cols = 5, 3\n",
    "\n",
    "# Output histogram plot for each varaible\n",
    "# A plot with n_rows rows, n_cols cols, and sized so each is 5 by 3 (inches)\n",
    "fig, axes = plt.subplots(nrows=n_rows, ncols=n_cols, figsize=(n_cols * 5, n_rows * 3))\n",
    "\n",
    "for row in range(n_rows):\n",
    "    for col in range(n_cols):\n",
    "        plot_number = (row * n_cols) + col\n",
    "        if plot_number >= n_columns:\n",
    "            break \n",
    "        column_name = columns[plot_number]\n",
    "        ax = axes[row, col]\n",
    "        ax.set_title(column_name)\n",
    "        \n",
    "        ax.hist(results.loc[column_name], bins=30)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "*For solutions, see `solutions/histograms.py`*"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Other Important points\n",
    "\n",
    "\n",
    "In the above tests, we mentioned that condition numbers above 20 are problematic. Like most things with multicollinarity, this is not a strict rule. Some people use 15, some use 30, and there is no distribution we can use to convert these to more meaningful likelihoods (as opposed to say, t-statistics).\n",
    "\n",
    "The degree of correlation that is significant is hard to decide on. Generally, the smaller the sample, the lower the cutoff point needs to be.\n",
    "\n",
    "That said, simply checking for correlation between two variables itself may not be sufficient to detect multicollinarity. An input variable might be a linear combination of other variables, and for this reason it might not be correlated highly with any single one of those variables. A way to think of this is whether a linear regression of some input variables would predict the other input variables.\n",
    "\n",
    "If you have some *a priori* knowledge of a relationship, you can try replacing your input variables with that linear combination. For instance, if you know that $X_2$ should have ten times the effect of $X_1$ in your model, you can remove them from your model, create a new variable $X_3= 10X_1 + X_2$ and use that instead.\n",
    "\n",
    "Do not just drop a variable because it causes multicollinearity. If you added it simply to experiment, then perhaps dropping it again is fine. However, if you had good reason to think that the variable belongs in your model, then don't just drop it to see if that fixes the issue. While this may address the multicollinarity, it can lead to specification error - which is when the model cannot accurately describe your output. This then has the follow on effect that your model might find unimportant-but-chance patterns between unrelated input variables and your output. This is known as overfitting. Your model is learning the random noise in your data, not the underlying trends. Simply dropping a variable may instead cause the opposite problem of underfitting, where there simply isn't enough data to properly model your output (think of using just the mean to predict the outcome, ignoring any input data)."
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
